Methods and arrangements for tracking and locating laptops

ABSTRACT

An arrangement for employing a host of receivers that may already be present in a laptop, to enable the laptop to collect a significant amount of data about its location. Once the system then finds a readily available connection, it can then transmit information about its location as well as other information to help pinpoint the location of the laptop.

FIELD OF THE INVENTION

The present invention relates to methods and arrangements for tracking and locating portable computers such as laptops.

BACKGROUND OF THE INVENTION

The terms “laptop”, “laptop computer”, “notebook” and “notebook computer”, as broadly employed herein, should be understood to be interchangeable with one another and to broadly relate to essentially any type of portable computer as commonly understood in connection with any or all of those four terms.

Laptops, owing to their portability, easily lend themselves to theft or unauthorized removal (e.g., from a workplace setting) if concerted measures are not otherwise taken to mitigate such a likelihood.

Conventional arrangements have been developed that permit a laptop to transmit certain information such at its IP (Internet Protocol) address and its MAC (Media Access Control) address, after theft or removal, it is connected over a wireless or hard-wired Ethernet or Internet device. One such arrangement is the “COMPUTRACE” software manufactured by Absolute Software of Vancouver, BC, Canada (http://www.computrace.com) Additional information about a transmitted IP address(es) at the time of transmission may be obtained from the internet service provider (ISP) to whom the IP address is assigned or through various geolocation providers such as MaxMind LLC of Boston, Mass., United States (http://www.maxmind.com/app/ip-location). Obtaining the information from an ISP may invoke various privacy interests and require the assistance of law enforcement or judicial intervention. Additional information about a transmitted IP address(es), however, normally does not necessarily afford an accurate fix on the location of the laptop, meaning that recovery can be elusive or, at the very least, difficult. It will also be appreciated that accurately locating a laptop can be of assistance in locating an individual who needs to be found or traced for a variety of reasons (e.g., in a weather-related emergency, in connection with the elopement of a minor or abduction of an individual, etc.).

Accordingly, a need has been recognized in connection with providing a more accurate and reliable method of determining an initially unknown location of a laptop.

SUMMARY OF THE INVENTION

In accordance with at least one presently preferred embodiment of the present invention, there is broadly contemplated herein an arrangement for employing a host of receivers that may already be present in a laptop, to enable the laptop to collect a significant amount of data about its location. Once the system then finds a readily available connection, it can then transmit information about its location as well as other information to help pinpoint the location of the laptop.

In summary, one aspect of the invention provides a method comprising: providing a computer system; obtaining information relating to computer system location; finding an open access point; and transmitting information regarding computer system location; the obtaining step comprising obtaining information relating to the open access point and to at least one other wireless transmitting device; and the transmitting step comprising transmitting information relating to the open access point and to at least one other wireless transmitting device.

Another aspect of the invention provides a system comprising: a CPU; a system memory in communication with the CPU; a wireless module which acts to: obtain information relating to an open access point and to at least one other wireless transmitting device; finding an open access point; and transmit information regarding system location via transmitting information relating to the open access point and to at least one other wireless transmitting device.

Furthermore, an additional aspect of the invention provides a program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps comprising: providing a computer system; obtaining information relating to computer system location; finding an open access point; and transmitting information regarding computer system location; the obtaining step comprising obtaining information relating to the open access point and to at least one other wireless transmitting device; and the transmitting step comprising transmitting information relating to the open access point and to at least one other wireless transmitting device.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a laptop computer system.

FIG. 2 schematically illustrates a process of locating a laptop.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

For a better understanding of the present invention, together with other and further features and advantages thereof, reference is made to the following description, taken in conjunction with the accompanying drawings, and the scope of the invention will be pointed out in the appended claims.

It will be readily understood that the components of the present invention, as generally described and illustrated in the Figures herein, may be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of the embodiments of the apparatus, system, and method of the present invention, as represented in FIGS. 1 through 2, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention.

Functional units described in this specification may be labeled as modules, in order to more particularly emphasize their implementation independence. For example, a module may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.

Modules may also be implemented in software for execution by various types of processors. An identified module of executable code may, for instance, comprise one or more physical or logical blocks of computer instructions which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together, but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.

Indeed, a module of executable code could be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices. Similarly, operational data may be identified and illustrated herein within modules, and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed over different locations including over different storage devices, and may exist, at least partially, merely as electronic signals on a system or network.

Reference throughout this specification to “one embodiment” or “an embodiment” (or the like) means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout this specification are not necessarily all referring to the same embodiment.

Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided, such as examples of programming, software modules, user selections, network transactions, database queries, database structures, hardware modules, hardware circuits, hardware chips, etc., to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention can be practiced without one or more of the specific details, or with other methods, components, materials, etc. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of the invention.

The illustrated embodiments of the invention will be best understood by reference to the drawings, wherein like parts are designated by like numerals or other labels throughout. The following description is intended only by way of example, and simply illustrates certain selected embodiments of devices, systems, and processes that are consistent with the invention as claimed herein.

Referring now to FIG. 1, there is depicted a block diagram of an illustrative embodiment of a computer system 12. The illustrative embodiment depicted in FIG. 1 may be a notebook computer system, such as one of the ThinkPad® series of personal computers sold by Lenovo (US) Inc. of Purchase, N.Y. or a workstation computer, such as the Intellistation®, which are sold by International Business Machines (IBM) Corporation of Armonk, N.Y.; however, as will become apparent from the following description, the present invention is applicable to essentially any data processing system, but preferably a portable computer system for which there may be a need to pinpoint its location.

As shown in FIG. 1, computer system 12 includes at least one system processor 42, which is coupled to a Read-Only Memory (ROM) 40 and a system memory 46 by a processor bus 44. System processor 42, which may comprise one of the line of processors produced by Intel Corporation, is a general-purpose processor that executes boot code 41 stored within ROM 40 at power-on and thereafter processes data under the control of operating system and application software stored in system memory 46. System processor 42 is coupled via processor bus 44 and host bridge 48 to Peripheral Component Interconnect (PCI) local bus 50.

PCI local bus 50 supports the attachment of a number of devices, including adapters and bridges. Among these devices is network adapter 66, which interfaces computer system 12 to LAN 10, and graphics adapter 68, which interfaces computer system 12 to display (or monitor) 69. Communication on PCI local bus 50 is governed by local PCI controller 52, which is in turn coupled to non-volatile random access memory (NVRAM) 56 via memory bus 54. Local PCI controller 52 can be coupled to additional buses and devices via a second host bridge 60.

Computer system 12 further includes Industry Standard Architecture (ISA) bus 62, which is coupled to PCI local bus 50 by ISA bridge 64. Coupled to ISA bus 62 is an input/output (I/O) controller 70, which controls communication between computer system 12 and attached peripheral devices such as a keyboard, mouse, and a disk drive. In addition, I/O controller 70 supports external communication by computer system 12 via serial and parallel ports.

It should be further understood that while FIG. 1 conveys specific hardware components that can be employed in accordance with embodiments of the present invention, the concepts discussed and contemplated herein are of course applicable to a very wide variety of computer systems and constituent conventional components.

In accordance with at least one presently preferred embodiment of the present invention, there is broadly contemplated herein an arrangement for employing a host of receivers that may already be present in a laptop, to enable the laptop to collect a significant amount of data about its location. Once the system then finds a readily available connection, it can then transmit information about its location as well as other information to help pinpoint the location of the laptop.

Accordingly, in accordance with a preferred environment in which the embodiments of the present invention may be employed, computer system 12 is preferably a laptop or notebook computer system. As such, there will typically be provided a quantity of n wireless receivers (e.g., 1, 2, 3 . . . n ) as indicated at 72, in communication with I/O controller 70 in known manner. These receivers may include, but are by no means limited to, a 802.11 receiver, a WWAN (Wireless Wide Area Network) receiver, an FM receiver, and/or a “BLUETOOTH” receiver.

It is recognized, in accordance with at least one preferred embodiment of the present invention, that at any time a system 12 can obtain a significant amount of data about its general location via conventional arrangements (e.g., IP address, operating system, “COMPUTRACE”, etc.) together with and any or all of the receivers 72. Accordingly, when a system 12 is removed to another location (e.g., is stolen or taken without authorization), it may preferably begin to collect information about its surroundings via conventional arrangements together with radio signals, in a manner to be more fully appreciated herebelow. Thence, the system 12 may preferably find an available connection (preferably, an open access point such as a WiFi “hotspot”) via which it may transmit information about its location. In that process, it may also preferably transmit information about other wireless devices from which it has received information, such as associated SSID's (Service Set Identifiers) and MAC addresses of such devices, as well as the signal strength of any such devices. This will help provide ample information via which the location of the system 12 can be pinpointed (e.g., via a triangulation of data on the wireless devices and the interrelationship of such data).

FIG. 2 is a schematically illustrates a process 100 that may be undertaken in accordance with a preferred embodiment of the present invention in facilitating the locating of a laptop. Reference may also continue to be made to FIG. 1 as needed.

First, the wireless receivers 72 (FIG. 1) will preferably scan for other wireless transmitting devices in the vicinity (102). The number and types of wireless transmitting devices that can be scanned for are many and can include, for example, other laptops, cell phones, and FM radio stations, among very many other devices. In the process, routinely accessible information about such transmitting devices will preferably be obtained and stored as “snapshot” data (e.g., in system memory 46 [FIG. 1]). Thus, with regard to such transmitting devices, information such as MAC addresses, SSID's and, for FM radio stations, PTY/RDS (program type/radio data system) data will preferably be obtained. Also preferably obtained is a read on the signal strength of each wireless transmitting device for which data is being collected. Additional scans may be made, in known manner, for WWAN cell phone tower ID's in the vicinity.

Next, out of all the wireless transmitting points ascertained in step 102, at least one open access point is preferably located (104). In known manner, a connection is then preferably established with to one or more access points so found (106).

In a subsequent step, this “live” connection is preferably exploited to transmit to a central collection point information on the one or more access points being used (108). Further, other collected information (“snapshot” data) from step 102 regarding other local wireless transmitting devices (that do not necessarily correspond to available open access points) is also preferably transmitted to the central collection point (110). The central collection point can take any of a wide variety of conceivable forms; the “COMPUTRACE” software manufactured by Absolute Software of Vancouver, BC, Canada, affords such a data collection capability.

It should be appreciated, then, that once data is collected at the central data collection point regarding not only (a) the open access point via which information is being transmitted but also (b) other wireless transmitting devices, a triangulated estimate of the location of the laptop may be obtained. This of course, will be a much more accurate estimate than would have been possible if solely the location(s) of the one or more exploited open access points were known. Furthermore, it will be appreciated that the triangulation can be greatly aided with the signal strength information relating to each wireless transmitting device.

In accordance with at least one embodiment of the present invention, the process 100 described hereinabove may be carried out in accordance with essentially any predetermined criteria. For instance, the laptop in question may be configured to always scan for transmitting devices (102) at predetermined intervals (e.g., every 15 minutes) regardless of the operating context or the status of the system (e.g., stolen or removed without permission). On the other hand, process 100 could be triggered by other factors such as a failure to enter a password associated with the laptop or a lack of a positive match in routine facial recognition as may be performed by a built-in camera.

Generally, it should be appreciated that, in accordance with at least one presently preferred embodiment of the present invention, a “wireless module” may comprise any or all of the wireless receivers 72 as shown in FIG. 1 along with any executable code which employs the receivers 72 for any of a variety of predetermined purposes. Accordingly, a wireless module in accordance with at least one embodiment of the present invention may preferably act to: obtain information relating to an open access point and to at least one other wireless transmitting device; finding an open access point; and transmit information regarding system location via transmitting information relating to the open access point and to at least one other wireless transmitting device.

Further, it will be appreciated from the foregoing that a wireless module may undertake any or all of the following specific acts: scan for wireless transmitting devices in a vicinity of a system location; ascertain, from scanned wireless transmitting devices, at least one open access point; establish a connection with at least one open access point; obtain, with regard to an open access point and at least one other wireless transmitting device, location information and signal strength information; store in system memory information relating to the at least one other wireless transmitting device for subsequent transmission; and obtain, from at least one wireless transmitting device, at least one item from the group consisting essentially of: a MAC address, a SSID, PTY/RDS data, and a WWAN cell phone tower ID.

If not otherwise stated herein, it is to be assumed that all patents, patent applications, patent publications and other publications (including web-based publications) mentioned and cited herein are hereby fully incorporated by reference herein as if set forth in their entirety herein.

Although illustrative embodiments of the present invention have been described herein with reference to the accompanying drawings, it is to be understood that the invention is not limited to those precise embodiments, and that various other changes and modifications may be affected therein by one skilled in the art without departing from the scope or spirit of the invention. 

1. A method comprising: providing a computer system; obtaining information relating to computer system location; finding an open access point; and transmitting information regarding computer system location; said obtaining step comprising obtaining information relating to the open access point and to at least one other wireless transmitting device; and said transmitting step comprising transmitting information relating to the open access point and to at least one other wireless transmitting device.
 2. The method according to claim 1, wherein said obtaining step comprises scanning for wireless transmitting devices in a vicinity of a computer system location.
 3. The method according to claim 2, wherein said obtaining step further comprises ascertaining, from scanned wireless transmitting devices, at least one open access point.
 4. The method according to claim 3, further comprising the step of establishing a connection with at least one open access point.
 5. The method according to claim 2, wherein said scanning step comprises employing at least one computer system item from the group consisting essentially of: a 802.11 receiver, a WWAN (Wireless Wide Area Network) receiver, an FM receiver, and a “BLUETOOTH” receiver.
 6. The method according to claim 1, wherein said obtaining step comprises obtaining, with regard to the open access point and the at least one other wireless transmitting device, location information and signal strength information.
 7. The method according to claim 1, wherein said obtaining step comprises storing information relating to the at least one other wireless transmitting device for subsequent use in said transmitting step.
 8. The method according to claim 1, further comprising the step of ascertaining a computer system location based on information transmitted in said transmitting step.
 9. The method according to claim 1, wherein said obtaining step comprises obtaining at least one item from the group consisting essentially of: a MAC address; a SSID; PTY/RDS data; and a WWAN cell phone tower ID.
 10. The method according to claim 1, wherein said step of providing a computer system comprises providing a laptop computer system.
 11. A system comprising: a CPU; a system memory in communication with said CPU; a wireless module which acts to: obtain information relating to an open access point and to at least one other wireless transmitting device; finding an open access point; and transmit information regarding system location via transmitting information relating to the open access point and to at least one other wireless transmitting device.
 12. The system according to claim 11, wherein said wireless module acts to scan for wireless transmitting devices in a vicinity of a system location.
 13. The system according to claim 12, wherein said wireless module further acts to ascertain, from scanned wireless transmitting devices, at least one open access point.
 14. The system according to claim 13, wherein said wireless module further acts to establish a connection with at least one open access point.
 15. The system according to claim 12, wherein said wireless module comprises at least one item from the group consisting essentially of: a 802.11 receiver, a WWAN (Wireless Wide Area Network) receiver, an FM receiver, and a “BLUETOOTH” receiver.
 16. The system according to claim 11, wherein said wireless module acts to obtain, with regard to the open access point and the at least one other wireless transmitting device, location information and signal strength information.
 17. The system according to claim 11, wherein wireless module acts to store in said system memory information relating to the at least one other wireless transmitting device for subsequent transmission.
 18. The system according to claim 11, wherein said wireless module acts to obtain, from at least one wireless transmitting device, at least one item from the group consisting essentially of: a MAC address; a SSID; PTY/RDS data; and a WWAN cell phone tower ID.
 19. The system according to claim 11, wherein said system comprises a laptop computer system.
 20. A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps comprising: providing a computer system; obtaining information relating to computer system location; finding an open access point; and transmitting information regarding computer system location; said obtaining step comprising obtaining information relating to the open access point and to at least one other wireless transmitting device; and said transmitting step comprising transmitting information relating to the open access point and to at least one other wireless transmitting device. 